package cc.autoapi.pucong.auto.flow.core.root.properties;


import org.springframework.boot.context.properties.ConfigurationProperties;
import org.springframework.boot.context.properties.NestedConfigurationProperty;

@ConfigurationProperties(prefix = "auto-flow")
public class AutoFlowDesignProperties {

    /**
     * 是否装配 auto flow
     */
    private boolean enable = true;

    /**
     * web页面入口
     */
    private String web = "/auto-flow-web";
    /**
     * 是否启用跨域支持
     *
     * @since 1.0.0
     */
    private boolean supportCrossDomain = true;

    @NestedConfigurationProperty
    private JdbcConfig jdbcConfig = new JdbcConfig();

    @NestedConfigurationProperty
    private SecurityConfig securityConfig = new SecurityConfig();

    @NestedConfigurationProperty
    private AiConfig aiConfig = new AiConfig();

    /**
     * 打印banner
     */
    private boolean banner = true;

    public AiConfig getAiConfig() {
        return aiConfig;
    }

    public void setAiConfig(AiConfig aiConfig) {
        this.aiConfig = aiConfig;
    }

    public boolean isEnable() {
        return enable;
    }

    public boolean isSupportCrossDomain() {
        return supportCrossDomain;
    }

    public void setSupportCrossDomain(boolean supportCrossDomain) {
        this.supportCrossDomain = supportCrossDomain;
    }

    public void setEnable(boolean enable) {
        this.enable = enable;
    }

    public String getWeb() {
        return web;
    }

    public void setWeb(String web) {
        this.web = web;
    }

    public SecurityConfig getSecurityConfig() {
        return securityConfig;
    }

    public void setSecurityConfig(SecurityConfig securityConfig) {
        this.securityConfig = securityConfig;
    }

    public void setBanner(boolean banner) {
        this.banner = banner;
    }

    public boolean isBanner() {
        return banner;
    }

    public JdbcConfig getJdbcConfig() {
        return jdbcConfig;
    }

    public void setJdbcConfig(JdbcConfig jdbcConfig) {
        this.jdbcConfig = jdbcConfig;
    }
}

